// @Title sujinke.proto-rpc.go
// @Description:
// @Author 姓名编写
// @Date 2024/3/15
// @Update 姓名编写 2024/3/15

/**************************************************
*Copyright(C).2016-2024,瀚辰光翼⽣物科技有限公司
*文件名：sujinke.proto-rpc.go
*内容简述：*
*文件历史：
author 姓名编写 创建 2024/3/15
**************************************************/
package main

import (
	"context"
	"fmt"
	"google.golang.org/grpc"
	"log"
	"net"

	pb "cec-server/app/api/rpc/proto" // 替换为你的 protobuf 生成的包名
)

type server struct {
	pb.UnimplementedMessageSendServiceServer
	// 实现你的服务结构体和方法
}

func (s *server) MessageSend(ctx context.Context, request *pb.Request) (*pb.Response, error) {
	//TODO implement me
	panic("implement me")
}

//消息发送的rpc接口
func main() {

	lis, err := net.Listen("tcp", ":50051") // 指定监听地址与端口
	if err != nil {
		log.Fatalf("failed to listen: %v", err)
	}

	grpcServer := grpc.NewServer() // 创建 gRPC 服务器实例

	// 注册你的服务到 gRPC 服务器
	pb.RegisterMessageSendServiceServer(grpcServer, &server{})

	fmt.Println("gRPC Server is running on port 50051...")

	if err := grpcServer.Serve(lis); err != nil { // 启动服务
		log.Fatalf("failed to serve: %v", err)
	}
	// 服务注册
	// 服务发现
	// 服务调用
}
